package com.link.base.base.approval.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.link.core.basic.model.BasicModel;
/**
 * Copyright  hande Company. All Rights Reserved.
 *
 * @author  unknwon
 * @date:   2018/11/8 15:34
 * @version 1.0
 */

public class Flow extends BasicModel {

    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long id;
    /**流程名称**/
    private String flowName;
    /**流程状态**/
    private String flowStatus;
    /**审批流程ID**/
    private Long approvalId;
    /**审批流程名称**/
    private String approvalName;
    /**当前审核进展描述**/
    private String currentDesc;
    /**审批对象id**/
    @JsonSerialize(using = ToStringSerializer.class)
    private Long flowObjId;
    /**发起人ID**/
    private Long flowStartPsnId;
    /**发起人**/
    private String flowStartPsnName;
    /**发起时间**/
    private String flowStart;
    /**送审时间**/
    private String flowNodeStart;
    /**待审人id**/
    private Long flowNodePsnId;
    /**待审人**/
    private String flowNodePsnName;
    /**当前审批节点ID**/
    private Long approvalNodeId;
    /**待审批流程节点描述**/
    private String approvalNodeDesc;
    /**是否允许转送(当前节点)**/
    private String allowTransfer;
    /**是否允许结束(当前节点)**/
    private String allowEnd;
    /**CRM 展示明细页面**/
    private String crmShowUrl;
    /**CRM 操作页面**/
    private String crmOperateUrl;
    /**流程备注**/
    private String comments;
    /**查询数据安全性使用**/
    private String attr1;
    /**已读标记；Y/N**/
    private String readFlag;
    /**审批对象详情**/
    private String flowObjDetail;
    /**客户id**/
    private Long accntId;
    /**客户姓名**/
    private String accntName;
    /**可填信息标识**/
    private String currentIsWrite;
    /**CRM审批流程对应界面url**/
    private String approvalObjUrl;
    /**当前审批节点下一步骤序号**/
    private String newStepNum;
    /**当前审批节点步骤序号**/
    private String currentStepNum;

    private String apprType;

    public String getApprType() {
        return apprType;
    }

    public void setApprType(String apprType) {
        this.apprType = apprType;
    }

    public String getFlowStatus() {
        return flowStatus;
    }

    public void setFlowStatus(String flowStatus) {
        this.flowStatus = flowStatus;
    }

    public Long getApprovalId() {
        return approvalId;
    }

    public void setApprovalId(Long approvalId) {
        this.approvalId = approvalId;
    }

    public String getApprovalName() {
        return approvalName;
    }

    public void setApprovalName(String approvalName) {
        this.approvalName = approvalName;
    }

    public Long getFlowObjId() {
        return flowObjId;
    }

    public void setFlowObjId(Long flowObjId) {
        this.flowObjId = flowObjId;
    }

    public Long getFlowStartPsnId() {
        return flowStartPsnId;
    }

    public void setFlowStartPsnId(Long flowStartPsnId) {
        this.flowStartPsnId = flowStartPsnId;
    }

    public String getFlowStartPsnName() {
        return flowStartPsnName;
    }

    public void setFlowStartPsnName(String flowStartPsnName) {
        this.flowStartPsnName = flowStartPsnName;
    }

    public String getFlowStart() {
        return flowStart;
    }

    public void setFlowStart(String flowStart) {
        this.flowStart = flowStart;
    }

    public String getFlowNodeStart() {
        return flowNodeStart;
    }

    public void setFlowNodeStart(String flowNodeStart) {
        this.flowNodeStart = flowNodeStart;
    }

    public Long getFlowNodePsnId() {
        return flowNodePsnId;
    }

    public void setFlowNodePsnId(Long flowNodePsnId) {
        this.flowNodePsnId = flowNodePsnId;
    }

    public String getFlowNodePsnName() {
        return flowNodePsnName;
    }

    public void setFlowNodePsnName(String flowNodePsnName) {
        this.flowNodePsnName = flowNodePsnName;
    }

    public Long getApprovalNodeId() {
        return approvalNodeId;
    }

    public void setApprovalNodeId(Long approvalNodeId) {
        this.approvalNodeId = approvalNodeId;
    }

    public String getFlowName() {
        return flowName;
    }

    public void setFlowName(String flowName) {
        this.flowName = flowName;
    }

    public String getApprovalNodeDesc() {
        return approvalNodeDesc;
    }

    public void setApprovalNodeDesc(String approvalNodeDesc) {
        this.approvalNodeDesc = approvalNodeDesc;
    }

    public String getComments() {
        return comments;
    }

    public void setComments(String comments) {
        this.comments = comments;
    }

    public String getAllowTransfer() {
        return allowTransfer;
    }

    public void setAllowTransfer(String allowTransfer) {
        this.allowTransfer = allowTransfer;
    }

    public String getCurrentDesc() {
        return currentDesc;
    }

    public void setCurrentDesc(String currentDesc) {
        this.currentDesc = currentDesc;
    }

    public String getCrmShowUrl() {
        return crmShowUrl;
    }

    public void setCrmShowUrl(String crmShowUrl) {
        this.crmShowUrl = crmShowUrl;
    }

    @Override
    public String getAttr1() {
        return attr1;
    }

    @Override
    public void setAttr1(String attr1) {
        this.attr1 = attr1;
    }

    public String getCrmOperateUrl() {
        return crmOperateUrl;
    }

    public void setCrmOperateUrl(String crmOperateUrl) {
        this.crmOperateUrl = crmOperateUrl;
    }

    public String getAllowEnd() {
        return allowEnd;
    }

    public void setAllowEnd(String allowEnd) {
        this.allowEnd = allowEnd;
    }

    public String getReadFlag() {
        return readFlag;
    }

    public void setReadFlag(String readFlag) {
        this.readFlag = readFlag;
    }

    public String getFlowObjDetail() {
        return flowObjDetail;
    }

    public void setFlowObjDetail(String flowObjDetail) {
        this.flowObjDetail = flowObjDetail;
    }

    public Long getAccntId() {
        return accntId;
    }

    public void setAccntId(Long accntId) {
        this.accntId = accntId;
    }

    public String getAccntName() {
        return accntName;
    }

    public void setAccntName(String accntName) {
        this.accntName = accntName;
    }

    public String getCurrentIsWrite() {
        return currentIsWrite;
    }

    public void setCurrentIsWrite(String currentIsWrite) {
        this.currentIsWrite = currentIsWrite;
    }

    public String getApprovalObjUrl() {
        return approvalObjUrl;
    }

    public void setApprovalObjUrl(String approvalObjUrl) {
        this.approvalObjUrl = approvalObjUrl;
    }

    public String getNewStepNum() {
        return newStepNum;
    }

    public void setNewStepNum(String newStepNum) {
        this.newStepNum = newStepNum;
    }

    public String getCurrentStepNum() {
        return currentStepNum;
    }

    public void setCurrentStepNum(String currentStepNum) {
        this.currentStepNum = currentStepNum;
    }
}
